home *** CD-ROM | disk | FTP | other *** search
/ MacFormat 1994 November / macformat-018.iso / Utility Spectacular / AfterDark / TwilightZone ƒ / source / main.c < prev    next >
Encoding:
C/C++ Source or Header  |  1993-06-17  |  1.9 KB  |  119 lines  |  [TEXT/KAHL]

  1. /*-------------------------------------------------------------------------------------
  2.  *
  3.  * Simple Sample Application Framework
  4.  *
  5.  * ©1991 Apple Computer
  6.  *
  7.  -------------------------------------------------------------------------------------*/
  8. /*
  9.  * main.c -- main entry point and initialization
  10.  *
  11.  * change history:
  12.  *
  13.  * SJF        11/6/91        1.0d1        initial coding
  14.  *
  15.  */
  16.  
  17. #include <Traps.h>
  18.  
  19. #include "const.h"
  20. #include "mytypes.h"
  21. #include "mymenus.h"
  22. #include "globals.h"
  23. #include "utils.h"
  24. #include "trapavailable.h"
  25. #include "events.h"
  26. #include "aevt.h"
  27. #include "patches.h"
  28. #include "grafstuff.h"
  29.  
  30. #include "main.h"
  31.  
  32. /* main entry point */
  33.  
  34. void main(void)
  35. {
  36.     if (InitToolboxes()==noErr && InitApplication()==noErr)
  37.         MainLoop();
  38.     
  39.     RemoveMonitorData();
  40.     RemovePatches();
  41.     ExitProgram();
  42.     ExitToShell();
  43. }
  44.  
  45.  
  46. /* initializes the standard Mac toolbox */
  47.  
  48. OSErr InitToolboxes(void)
  49. {
  50.     MaxApplZone();
  51.     MoreMasters();
  52.     MoreMasters();
  53.     MoreMasters();
  54.     InitGraf(&qd.thePort);
  55.     InitFonts();
  56.     InitWindows();
  57.     InitMenus();
  58.     TEInit();
  59.     InitDialogs(nil);
  60.     InitCursor();
  61.     FlushEvents(everyEvent,0L);
  62.     
  63.     if (SupportsAEVT()) {
  64.         RegisterMyEvents();
  65.     }
  66.         
  67. #ifdef __SYSEQU__
  68.     BlockMove((long *)TimeLM,(long *)RndSeed,sizeof(long));
  69. #else
  70.     RndSeed = Time;
  71. #endif
  72.  
  73.     return noErr;
  74. }
  75.  
  76.  
  77. /* initializes the application globals/menus/windows/etc... */
  78.  
  79. OSErr InitApplication(void)
  80. {
  81.     CursHandle cursH;
  82.     
  83.     // global variable initialization
  84.     
  85.     gHasWaitNextEvent = TrapAvailable(_WaitNextEvent);
  86.         
  87.     gDone = false;
  88.     gInBackground = false;
  89.     
  90.     InstallPatches();
  91.     SetupMonitorData();
  92.     
  93.     InitMyMenus();
  94.     InitMyWindows();
  95.     
  96.     return noErr;
  97. }
  98.  
  99.  
  100. void InitMyMenus(void)
  101. {
  102.     Handle mbarHandle;
  103.     MenuHandle appleMenu;
  104.     
  105.     mbarHandle = GetNewMBar(kMenuBarID);
  106.     SetMenuBar(mbarHandle);
  107.     
  108.     appleMenu = GetMHandle(kAppleMenu);
  109.     AddResMenu(appleMenu,'DRVR');            // build apple menu
  110.  
  111.     SetDefaultMenus();
  112.     DrawMenuBar();
  113. }
  114.  
  115.  
  116. void InitMyWindows(void)
  117. {
  118. }
  119.